<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- /fasttmp/mkdist-qt-4.3.5-1211793125/qtopia-core-opensource-src-4.3.5/src/gui/image/qiconengineplugin.cpp -->
<head>
  <title>Qt 4.3: QIconEnginePluginV2 Class Reference</title>
  <link href="classic.css" rel="stylesheet" type="text/css" />
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td align="left" valign="top" width="32"><a href="http://www.trolltech.com/products/qt"><img src="images/qt-logo.png" align="left" width="32" height="32" border="0" /></a></td>
<td width="1">&nbsp;&nbsp;</td><td class="postheader" valign="center"><a href="index.html"><font color="#004faf">Home</font></a>&nbsp;&middot; <a href="classes.html"><font color="#004faf">All&nbsp;Classes</font></a>&nbsp;&middot; <a href="mainclasses.html"><font color="#004faf">Main&nbsp;Classes</font></a>&nbsp;&middot; <a href="groups.html"><font color="#004faf">Grouped&nbsp;Classes</font></a>&nbsp;&middot; <a href="modules.html"><font color="#004faf">Modules</font></a>&nbsp;&middot; <a href="functions.html"><font color="#004faf">Functions</font></a></td>
<td align="right" valign="top" width="230"><a href="http://www.trolltech.com"><img src="images/trolltech-logo.png" align="right" width="203" height="32" border="0" /></a></td></tr></table><h1 align="center">QIconEnginePluginV2 Class Reference<br /><sup><sup>[<a href="qtgui.html">QtGui</a> module]</sup></sup></h1>
<p>The QIconEnginePluginV2 class provides an abstract base for custom <a href="qiconenginev2.html">QIconEngineV2</a> plugins. <a href="#details">More...</a></p>
<pre> #include &lt;QIconEnginePluginV2&gt;</pre><p>Inherits <a href="qobject.html">QObject</a>.</p>
<p>This class was introduced in Qt 4.3.</p>
<ul>
<li><a href="qiconenginepluginv2-members.html">List of all members, including inherited members</a></li>
</ul>
<a name="public-functions"></a>
<h3>Public Functions</h3>
<ul>
<li><div class="fn"/><b><a href="qiconenginepluginv2.html#QIconEnginePluginV2">QIconEnginePluginV2</a></b> ( QObject * <i>parent</i> = 0 )</li>
<li><div class="fn"/><b><a href="qiconenginepluginv2.html#dtor.QIconEnginePluginV2">~QIconEnginePluginV2</a></b> ()</li>
<li><div class="fn"/>virtual QIconEngineV2 * <b><a href="qiconenginepluginv2.html#create">create</a></b> ( const QString &amp; <i>filename</i> = QString() ) = 0</li>
<li><div class="fn"/>virtual QStringList <b><a href="qiconenginepluginv2.html#keys">keys</a></b> () const = 0</li>
</ul>
<ul>
<li><div class="fn"/>29 public functions inherited from <a href="qobject.html#public-functions">QObject</a></li>
</ul>
<h3>Additional Inherited Members</h3>
<ul>
<li><div class="fn"/>1 property inherited from <a href="qobject.html#properties">QObject</a></li>
<li><div class="fn"/>1 public slot inherited from <a href="qobject.html#public-slots">QObject</a></li>
<li><div class="fn"/>1 signal inherited from <a href="qobject.html#signals">QObject</a></li>
<li><div class="fn"/>5 static public members inherited from <a href="qobject.html#static-public-members">QObject</a></li>
<li><div class="fn"/>7 protected functions inherited from <a href="qobject.html#protected-functions">QObject</a></li>
</ul>
<a name="details"></a>
<hr />
<h2>Detailed Description</h2>
<p>The QIconEnginePluginV2 class provides an abstract base for custom <a href="qiconenginev2.html">QIconEngineV2</a> plugins.</p>
<p>Icon engine plugins produces <a href="qiconengine.html">QIconEngine</a>s for <a href="qicon.html">QIcon</a>s; an icon engine is used to render the icon. The keys that identifies the engines the plugin can create are suffixes of icon filenames; they are returned by <a href="qiconenginepluginv2.html#keys">keys</a>(). The <a href="qiconenginepluginv2.html#create">create</a>() function receives the icon filename to return an engine for; it should return 0 if it cannot produce an engine for the file.</p>
<p>Writing an icon engine plugin is achieved by inheriting QIconEnginePluginV2, reimplementing <a href="qiconenginepluginv2.html#keys">keys</a>() and <a href="qiconenginepluginv2.html#create">create</a>(), and adding the <a href="qtplugin.html#Q_EXPORT_PLUGIN2">Q_EXPORT_PLUGIN2</a>() macro.</p>
<p>You should ensure that you do not duplicate keys. Qt will query the plugins for icon engines in the order in which the plugins are found during plugin search (see the plugins <a href="plugins-howto.html">overview document</a>).</p>
<p>See also <a href="plugins-howto.html">How to Create Qt Plugins</a>.</p>
<hr />
<h2>Member Function Documentation</h2>
<h3 class="fn"><a name="QIconEnginePluginV2"></a>QIconEnginePluginV2::QIconEnginePluginV2 ( <a href="qobject.html">QObject</a> * <i>parent</i> = 0 )</h3>
<p>Constructs a icon engine plugin with the given <i>parent</i>. This is invoked automatically by the <a href="qtplugin.html#Q_EXPORT_PLUGIN2">Q_EXPORT_PLUGIN2</a>() macro.</p>
<h3 class="fn"><a name="dtor.QIconEnginePluginV2"></a>QIconEnginePluginV2::~QIconEnginePluginV2 ()</h3>
<p>Destroys the icon engine plugin.</p>
<p>You never have to call this explicitly. Qt destroys a plugin automatically when it is no longer used.</p>
<h3 class="fn"><a name="create"></a><a href="qiconenginev2.html">QIconEngineV2</a> * QIconEnginePluginV2::create ( const <a href="qstring.html">QString</a> &amp; <i>filename</i> = QString() )&nbsp;&nbsp;<tt> [pure virtual]</tt></h3>
<p>Creates and returns a <a href="qiconengine.html">QIconEngine</a> object for the icon with the given <i>filename</i>.</p>
<p>See also <a href="qiconenginepluginv2.html#keys">keys</a>().</p>
<h3 class="fn"><a name="keys"></a><a href="qstringlist.html">QStringList</a> QIconEnginePluginV2::keys () const&nbsp;&nbsp;<tt> [pure virtual]</tt></h3>
<p>Returns a list of icon engine keys that this plugin supports. The keys correspond to the suffix of the file or resource name used when the plugin was created. Keys are case insensitive.</p>
<p>See also <a href="qiconenginepluginv2.html#create">create</a>().</p>
<p /><address><hr /><div align="center">
<table width="100%" cellspacing="0" border="0"><tr class="address">
<td width="30%">Copyright &copy; 2008 <a href="trolltech.html">Trolltech</a></td>
<td width="40%" align="center"><a href="trademarks.html">Trademarks</a></td>
<td width="30%" align="right"><div align="right">Qt 4.3.5</div></td>
</tr></table></div></address></body>
</html>
